#ifndef VISTA_H_
#define VISTA_H_

#include <iostream>

#include <gtkmm.h>
#include <gtkmm/drawingarea.h>

#include <cairomm/surface.h>
#include <cairomm/context.h>
#include <cairomm/refptr.h>

#include "../modelo/Objetos/Objeto.h"

class Canvas;

class Vista {	
protected:
	short id;
	Objeto* obj;
	Canvas* canvas;

public:
	Vista();
	Vista(Objeto* obj);
	virtual ~Vista();
	short getId();
	virtual void draw(const Cairo::RefPtr<Cairo::Context>& cr, Gtk::Allocation& allocation)=0;
	void setCanvas(Canvas* canvas);
};

#endif /*VISTA_H_*/
